If a communication system which consists of many parallel channels operates asynchronously and without acknowledgement, there is neither a clock signal received by the receiver nor an acknowledgement signal sent back to the transmitter. Each transmission consists of one or more transitions (i.e., "1" bits) which are transmitted at the same time. If the information bits from different channels do not arrive at the same time (e.g., because of a delay in one or more channels), the receiver may receive some "1" bits corresponding to a next transmission before the present transmission has been completed, a condition referred to as "skew".
A paper by T. Verhoeff entitled "Delay-insensitive Codes--An Overview", published in Distributed Computing, Vol. 3, pp. 1-8, 1988, suggests the use in a parallel asynchronous communication system of unordered vectors because they are "delay insensitive". However, the parallel asynchronous communication system he describes requires that an acknowledgement signal be sent by the receiver to the transmitter upon completion of each transmission; and he does not disclose or suggest the use of vectors with Hamming distance properties which are unordered.
To fully understand unordered codes, it is best to consider an example. For a binary vector u of length n, u=u.sub.1,u.sub.2, . . . , u.sub.n. The set of non-zero bits of vector u are hereafter referred to as the "support" of u. For instance, for n=6, if u=100101, the support of u is the set {1,4,6}. Two vectors u and v of length n are considered unordered when their supports are unordered as sets; i.e., neither of them contains the other. Thus, u=100101 and v=010101 are unordered because their corresponding supports are {1,4,6} and {2,4,6}. By contrast, the vector w=000101 which has a support of {4,6} would not be unordered relative to either u or v because its support {4,6} is a subset of the support of both u and v.
There is a need for a parallel asynchronous communication system which (1) does not require acknowledgement between the receiver and transmitter when a transmission is completed; (2) ensures that the receiver can correctly determine when each transmission is completed; (3) distinguishes between signal levels belonging to different transmissions; (4) decodes each transmission to identify when an error-free transmission has arrived; and (5) decodes the transmissions in such a manner as to detect (and, if desired, initiate a preselected control operation) if skew occurs as a result of mixing of transitions in successive transmissions.